1. Field of the Invention
The present invention relates to a computer system having a storage device such as a hard disk drive (HDD), and more particularly to a computer system capable of passing data between an environment for a predetermined operating system (OS) and an area hidden from the OS.
2. Description of the Related Art
It has been possible to form an area within a hard disk drive (HDD) that is hidden from an operating system (OS) by using the hard disk drive (HDD) function of supporting AT attachment/advanced technology attachment packet interface-5 (ATA/ATAPI-5) specifications as industry standards and protected area run time interface extension services (PARTIES) architecture that is an American National Standards Institute (ANSI) standard. The protected area run time interface extension services (PARTIES) uses a “SET MAX ADDRESS” command to realize the specifications.
FIG. 4 is a view for explaining a function of PARTIES in a hard disk drive (HDD) 400, representing an image in which an area of the hard disk drive (HDD) 400 is cut in a slice. Herein, the value of a “Max” 402 for the artificial maximum area is defined, a normal command is given an area up to the “Max” 402, and an operating system (OS) has a use area ranging from a “Start” 404 to the “Max” 402. A PARTIES partition 406 ranges from the “Max” 402 to a “Native Max” 408 that is the intrinsic maximum area in the hard disk drive (HDD) 400. In a “Boot Engineering Extension Record” 410 having the specification decided or defined in the PARTIES partition 406, the information included in the PARTIES partition 406 is stored, and by referring to this record 410, various functions for the PARTIES partition 406 can be employed.
A way of uses as supposed in the specification of the PARTIES includes allocating the A: drive when the operating system (OS) is booted from the PARTIES partition, though the A: drive is normally allocated when the operating system (OS) is booted from a removable memory such as a floppy disk. For example, there is a service for access to the PARTIES partition, employing a basic input/output system (BIOS) call, or an Interrupt 13 of the BIOS, to a removable medium. That is, when the OS is booted from the PARTIES partition, the A: drive is seen, and the normal area looks like the C: drive. Thereby, a preload image of the operating system (OS)0 is stored in an area of the PARTIES to allow the recovery from this area or the BIOS set-up, in which information necessary for setting up the hardware and password and describing a boot sequence is stored, instead of the read only memory (ROM), whereby the user can make a set-up operation employing a graphical user interface.
However, the hidden area provided as a hardware function, such as the PARTIES partition, is presupposed to be only used in a limited way as above, but not applied for other functions.
Meanwhile, an environment used by a user typically containing various drivers and applications, an information area in an operating system (OS) called a registry might be broken or modified resulting in improper operation of the operating system (OS). In most of such cases, only the operating system (OS) and the applications need to be re-installed. In the process, user data should be saved and only the user data need to be recovered after re-installing the operating system (OS) and applications. Typically, other removable disks or storage on a network would be used for storing the data, however, the use of those other storage devices has been disadvantageous in that they require a lot of effort for recovery.
What is needed is a process, apparatus, and system that solve the above-mentioned technical problem. Beneficially, such a process, apparatus, and system would allow information to be passed between software modules in different partitions within a storage device such as a hard disk drive (HDD). The process, apparatus, and system would also allow information to be passed between a PARTIES partition in a hard disk drive (HDD), for example, and a normal partition to realize data backup using the PARTIES partition.